package com.oocl.util;

import java.text.ParseException;
import java.util.ArrayList;

import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

import com.oocl.pojo.Protocol;

public class JsonUtil {
	public static JSONObject toJsonObject(Protocol protocol)
	{
		if(protocol==null)
			return null;
		JSONObject json=new JSONObject();
		json.put("type", protocol.getType());
		json.put("from", protocol.getFrom());
		json.put("to", protocol.getTo());
		json.put("content", protocol.getContent());
		json.put("time", DateUtil.dateToStr(protocol.getTime(), "yyyy-MM-dd HH:mm:ss"));
		json.put("onlineUsers", protocol.getOnlineUsers());
		return json;
	}
	
	public static Protocol toProtocol(JSONObject json) throws JSONException, ParseException
	{

		Protocol protocol = new Protocol();
		protocol.setType(json.getInt("type"));
		protocol.setFrom(json.getString("from"));
		protocol.setTo(json.getString("to"));
		protocol.setContent(json.getString("content"));
		protocol.setTime(DateUtil.strToDate(json.getString("time"), "yyyy-MM-dd HH:mm:ss"));
		
		JSONArray array=json.getJSONArray("onlineUsers");
		ArrayList<String> list=new ArrayList<>();
		for(Object object:array)
		{
			list.add(object.toString());
		}
		protocol.setOnlineUsers(list);
		return protocol;
	}

}
